---
title: SAIF.Business.Policy overview
summary: High-level purpose, scope, and responsibilities for the shared base policy library.
status: draft
owner: SAIF Claims BOF team
last_reviewed: 2026-08-21
library: SAIF.Business.Policy
reference_type: embedded
---

# SAIF.Business.Policy overview

> **Documentation context:** Embedded library (local project reference within this repository)

`SAIF.Business.Policy` is a mid-tier VB.NET class library (target framework v4.6.2) with no program entry points. It provides a small set of retrieve-only BOF business objects, cached code-table lookups, cross-cutting policy interfaces/enums/constants, and a static ad hoc data-access helper class consumed by richer downstream policy libraries and the presentation/view business tier.*

## Purpose
- Provide retrieve-only hazard-group lookups (`clsHazardGroup`/`clsHazardGroupCollection`), cached code-table wrappers (`clsBenefitJurisdictionCodeMap`, `clsManualClassTypeCodeMap`), cross-layer policy contracts (`IPolicyHeaderDataProvider`, `IPolicyAssociationType`, `iPeriodRatingInfo`, `iPolicyPeriodBase`), and shared enums/constants used across the policy domain.
- Consumed by `SAIF.Business.View.Policy` (implements `IPolicyAssociationType`/`IPolicyHeaderAssociation`), and referenced (project-level, not member-traced) by `SAIF.Business.Policy.Core`, `SAIF.Business.Policy.Rating`, `SAIF.Business.Policy.Premium`, and `SAIF.Application.Policy`.*

## Responsibilities
- Supply read-only BOF business objects for hazard-group classification data.
- Supply cached, lazily-loaded code-table lookups built on the framework's `clsCodeTableBase.ExtendedCodeMap`†.
- Define cross-cutting policy contracts, enums, and constants implemented/consumed downstream.
- Supply ad hoc static scalar/stored-procedure data-access helpers via `PolicyInformation` that bypass the standard BOF business-object pattern.

## Key components
- `clsHazardGroup` / `clsHazardGroupCollection`: retrieve-only BOF objects for `HAZARD_GROUP` lookups.
- `CodeMaps.clsBenefitJurisdictionCodeMap` / `clsManualClassTypeCodeMap`: cached code-table maps.
- `PolicyInformation`: static ad hoc data-access helper for policy scalar/stored-procedure lookups.
- `IPolicyHeaderDataProvider`, `IPolicyAssociationType`, `IPolicyAssociation`, `IPolicyHeaderAssociation`, `iPeriodRatingInfo`, `iPolicyPeriodBase`: shared cross-layer contracts.
- `Enums`, `Constants`: shared domain enums and constants.

## Related documentation
- [Index](index.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified. Statements marked with †
> were retrieved from a dependency library's own documentation via the Legends CLI RAG service.

## Sources
- `SAIF.Business.Policy\SAIF.Business.Policy.vbproj`
- `SAIF.Business.Policy\clsHazardGroup.vb`
- `SAIF.Business.Policy\clsHazardGroupCollection.vb`
- `SAIF.Business.Policy\PolicyInformation.vb`
